package com.hzw.saas.api.chat;


import com.hzw.saas.api.chat.bo.ChatGroupBO;
import com.hzw.saas.api.chat.bo.SingleGroupBO;
;


import java.util.List;

public interface IChatGroupService {
    /**
     * 新增群组要传主健
     * @param userId
     * @param singleGroupBOS
     * @param groupType
     */
    void addGroup(String userId, List<SingleGroupBO> singleGroupBOS, Integer groupType);

    /**
     *根据id查询群组
     * @param groupIds
     * @return
     */
    List<ChatGroupBO> findByIds(List<String> groupIds);

    /**
     * 根据用户id和朋友id查询两人间的点对点关系
     * @param userId
     * @param friendId
     * @return
     */
    ChatGroupBO findFriendGroup(String userId,String friendId);

    /**
     * 删除好友
     * @param userId
     * @param friendId
     */
    void deleteFriend(String userId,String friendId);

    /**
     * 过滤出需要的状态下的群组
     * @param groupIds
     * @param status
     * @return
     */
    List<ChatGroupBO>   findNeedStatusGroup(List<String> groupIds, List<Integer> status,List<Integer> groupType);

    /**
     * 删除群组
     * @param userId
     * @param groupId
     */
    void deleteGroup(String userId,String groupId);

    void updateGroup(String userId,String groupId,String groupName);


    void  initData();
}
